 let img = GetCurrentScriptDirectory~"img\ExRumia.png";
 let startWait = 60;
 let shotWait = 180;

 function wait(w) {
  loop(w) { yield; }
 }

 task HomingButterfly(speed, limit, revise) {
  let obj = Obj_Create(OBJ_SHOT);

  Obj_SetPosition(obj, GetX, GetY);
  Obj_SetSpeed(obj, speed);
  Obj_SetAngle(obj, rand(0, 360));
  ObjShot_SetGraphic(obj, RED22);

  loop(limit) {
   if(Obj_BeDeleted(obj)) {
    break;
   }

   let angle = atan2(GetPlayerY - Obj_GetY(obj), GetPlayerX - Obj_GetX(obj));

   if(sin(angle - Obj_GetAngle(obj)) > 0) {
    Obj_SetAngle(obj, Obj_GetAngle(obj) + revise);
   }
   else {
    Obj_SetAngle(obj, Obj_GetAngle(obj) - revise);
   }
   yield;
  }
 }